AI påverkar hur programmering lärs ut

Permalänk
Melding Plague

AI påverkar hur programmering lärs ut

När en AI kan lösa alla enkla programmeringsproblem får lärare chansen att fokusera på mer komplexa färdigheter, som att hitta fel och testa.

Läs hela artikeln här

Visa signatur

Observera att samma trivselregler gäller i kommentarstrådarna som i övriga forumet och att brott mot dessa kan leda till avstängning. Kontakta redaktionen om du vill uppmärksamma fel i artikeln eller framföra andra synpunkter.

Permalänk
Medlem

Bör man kunna använda AI för att se om en student har använt AI i ett program som studenten ska göra för hand?

Visa signatur

NZXT H7 Flow, ASUS Z390-E, Intel 9700K 3.6GHz, 16 GB Corsair Vengeance 3.2GHz, Samsung EVO 970 500GB, MSI RTX 2070 Gaming Z, Seagate Barracuda 4 TB, Corsair RM750X V2 750W, Noctua NH-D15, 1 st FD Venturi HF-14, 6 st Phantek M25 120mm, Dell S2721DGFA,

Permalänk
Geeks Gaming
Skrivet av Mörksuggan:

Bör man kunna använda AI för att se om en student har använt AI i ett program som studenten ska göra för hand?

Varför göra ett program förhand om du har en AI?
Fattar att det är för att se vad man kan. Men när verktygen ändras varför ska man kunna skriva allt manuellt?

Har inte börjat använda AI själv för jag vill lära mig på egen hand. Men är väl mer en tidsfråga innan det är ett måste för hög produktivitet.

Permalänk
Medlem

Känns som språkspecifik kunskap som syntax etc kommer bli mindre relevant på sikt, när man enklare kan be en AI om hjälp.

Frågan är väl bara om rekryterare/chefer kommer inse det eller fortsätta ställa krav på X+ år erfarenhet av språk/ramverk 😅

Permalänk
Medlem
Skrivet av Mörksuggan:

Bör man kunna använda AI för att se om en student har använt AI i ett program som studenten ska göra för hand?

Går inte riktigt för ai är inte så exakt. Alla svar får inte exakt samma lösning, speciellt inte mellan olika program. Några kan påminna om en ai still, men svårt att bevisa om de använt det då de kör Copy paste. Sen de smarta kan ju göra minimala ändringar i koden eller beskrivningarna av hur koden används.

Enda som går att se om det är ai är ifall läraren vet hur eleven brukar skriva i texter och eleven plötsligt skriver helt annorlunda, men är ju samma som ifall eleven fuskar normalt genom att be någon annan göra uppgiften.

Lyckas de få fram en ai som kan identifiera andra ai med säkerhet kommer snabbt en som kan ändra uppgifterna så de inte faller i de kategorierna. Finns liksom ingen poäng med sånna program. (De som finns på internet är föresten helt opålitliga. Tog en spel bild från ett spel från 90 talet och den tyckte den var ai, sen en ai bild från Stable diffusion och den var då äkta. Så den gissar bara från olika kriterier).

Permalänk
Medlem

Genuin fråga: Om problemet är så enkelt att en AI kan skriva koden för att lösa det, går det inte då snabbare att skriva koden själv än att hitta lämplig formulering till AI:n och sedan verifiera att den verkligen "förstått" och gjort rätt?

Även för mer komplexa problem borde tiden att formulera frågan och verifiera kunna överstiga tiden att bara göra det själv?

Jag jobbar iofs mest i Matlab (inväntar kommentarer om hur det inte är ett riktigt språk, index ska börja på 0 osv), men har väldigt svårt att se nyttan av AI för den typ av kod jag normalt skriver i mitt arbete.

Permalänk
Medlem
Skrivet av viller2:

Genuin fråga: Om problemet är så enkelt att en AI kan skriva koden för att lösa det, går det inte då snabbare att skriva koden själv än att hitta lämplig formulering till AI:n och sedan verifiera att den verkligen "förstått" och gjort rätt?

Även för mer komplexa problem borde tiden att formulera frågan och verifiera kunna överstiga tiden att bara göra det själv?

Jag jobbar iofs mest i Matlab (inväntar kommentarer om hur det inte är ett riktigt språk, index ska börja på 0 osv), men har väldigt svårt att se nyttan av AI för den typ av kod jag normalt skriver i mitt arbete.

Skriva prompter är ju en färdighet i sig. Vet du precis vad du vill ha ut av en funktion så är det rätt lätt att delegera den till AI.
Att låta AI fixa en massa långtråkig klisterlogik är väl det bästa sättet att använda den medans man själv tar hand om de kluriga sakerna.
Fördelen med AI är att den har kunskap om många fler bibliotek än jag har så om jag beskriver vad jag vill förbättra i min kod så föreslår den ofta bibliotek som löser det på ett bättre sätt än mig.
Jag vet inte hur många gånger jag har gjort en funktion själv som AI snabbt bytt mot en bättre funktion som gör samma sak.

Kuriosa: Jag brukar använda AI för att konvertera signalgenererande matlabscript till python då matlab är djävulens avkomma.

Visa signatur

R&D Elektronikingenjör

Permalänk
Medlem
Skrivet av Rebben:

Jag vet inte hur många gånger jag har gjort en funktion själv som AI snabbt bytt mot en bättre funktion som gör samma sak.

Just det här kan jag möjligen se nyttan av, man har skrivit något begripligt och vill optimera det till något obegripligt som gör samma sak men mer beräkningseffektivt.

Permalänk
Medlem

Någon gång kanske det börjar läras ut i hur man bäst upptrycker vad man vill till en AI?
Precis som hur jag fick lära i hur man använder en miniräknare och alla dess förmågor!

Permalänk
Medlem
Skrivet av LessHack:

Går inte riktigt för ai är inte så exakt. Alla svar får inte exakt samma lösning, speciellt inte mellan olika program. Några kan påminna om en ai still, men svårt att bevisa om de använt det då de kör Copy paste. Sen de smarta kan ju göra minimala ändringar i koden eller beskrivningarna av hur koden används.

Småändringar behöver man oftast göra oavsett då iaf CHAT-GPT har en tendens att smutsa ner koden med all möjlig skräp som inte behövs just i det fallet som man skriver. Den har också en tendens att göra väldigt mångordiga lösningar.

Skrivet av viller2:

Genuin fråga: Om problemet är så enkelt att en AI kan skriva koden för att lösa det, går det inte då snabbare att skriva koden själv än att hitta lämplig formulering till AI:n och sedan verifiera att den verkligen "förstått" och gjort rätt?

Även för mer komplexa problem borde tiden att formulera frågan och verifiera kunna överstiga tiden att bara göra det själv?

Jag jobbar iofs mest i Matlab (inväntar kommentarer om hur det inte är ett riktigt språk, index ska börja på 0 osv), men har väldigt svårt att se nyttan av AI för den typ av kod jag normalt skriver i mitt arbete.

Nja. Om man är väldigt bekant med språket och vet exakt hur man ska lösa problemet så går det oftast snabbare att göra det själv än att tabba ut och ställa en fråga till chat-gpt och sen kopiera in och sen snygga till koden.
Men oftast slipper man ju det.
Man skriver oftast några bokstäver och så får man ett förslag av cop-pilot.
Om det är rätt så är det ju bara trygga tab så är det klart men ofta måste man ändra det lite. Dock går ju även det oftast snabbare än att skriva allt från scratch. Särkilt om inte är jättevan vid språket.
Och om man tex ska populera en stor json eller en struct med dum data så går det extremt mycket snabbare med co-pilot då skriver den oftast rätt och man behöver bara kontrollläsa.

Det är också ganska kul hur man nu kan hoppa in i ett nytt språk och inte förlora sådär jättemycket produktivitet tack vare co-pilot.

Visa signatur

Ghost S1 || Asrock Phantom Gaming Z390 || 9900KF || Corsair 32GB@3400MHz CL16/1.45volt || Intel 660p 1gb || Corsair sf600 || RTX 4070 Inno3d 2x|| Asus PG279QM

Macbook pro 14 M1

Permalänk
Medlem

Kom och tänka på när jag fram till högstadiet var riktigt duktig på matematik med papper och penna. När vi började i högstadiet så ifördes miniräknare som vi skulle använda. Efter det tappade jag typ all huvudräkning och med papper och penna (särskilt division).
Nu är jag inte särskilt intelligent så det gäller kanske bara mig och kanske inte ens jämförbart, men jag funderar på om det inte finns risken att man tappar kunskap när det blir "lätt" att låta AI skapa koden?

Visa signatur

Gigabyte UD AX,
Intel i7 13700KF, Arctic Freezer III 280mm. Corsair Dominator Platinum 32GB,
XTX Radeon RX 7800 XT Speedster MERC 319 Black,
Samsung Odyssey G7 Neo "32
Phanteks XT Pro Ultra chassi. Garuda Linux/Windows 11.

Permalänk
Medlem
Skrivet av Artikel:

Leo Porter säger att AI har lett till ett behov att lära studenterna den grundläggande färdigheten att bryta upp ett komplicerat problem i mindre, enklare problem [...]. Felsökning och automatiserade tester – [...] – har blivit viktiga redan från början.

Detta belyser inkompetensen i lärosätena. Att det skulle kräva "AI" för att röra runt i grytan så att de fattar hur man lär ut programmering på rätt sätt är skrämmande. Vi har liknande dynga på svenska lärosäten, men det är inte så här illa som artikeln beskriver.

Visa signatur

Jag har kvar min gamla avatar som en påminnelse om att även jag har varit ung och dum. Idag är jag, tack och lov, bara dum.

Permalänk
Medlem
Skrivet av Hakinger:

Kom och tänka på när jag fram till högstadiet var riktigt duktig på matematik med papper och penna. När vi började i högstadiet så ifördes miniräknare som vi skulle använda. Efter det tappade jag typ all huvudräkning och med papper och penna (särskilt division).
Nu är jag inte särskilt intelligent så det gäller kanske bara mig och kanske inte ens jämförbart, men jag funderar på om det inte finns risken att man tappar kunskap när det blir "lätt" att låta AI skapa koden?

Jo, det är nog en reell risk. Vi som har lärt oss den "hårda" vägen tappar ju också kunskapen om den inte används ofta, men det går ganska snabbt att komma på banan igen om den kunskapen väl behövs.

Om man lär sig att programmera genom att låta AI generera koden så har man aldrig fått den kunskapen till att börja med. Om den sedan behövs så kommer kurvan vara mycket brantare.

Men det kan ju också bli så att den kunskapen inte längre blir nödvändig. Ungefär som att dagens utvecklare inte nödvändigtvis vet hur man skriver kod i Assembly eller hur pekare fungerar och vad stack och heap är för något.

Visa signatur

AMD Ryzen 7 1700X 3.8 GHz 20MB | ASUS PRIME X370-PRO | MSI GeForce GTX 1080 Gaming X 8GB | G.Skill 16GB DDR4 3200 MHz CL14 Flare X | Corsair RM650x 650W

Permalänk
Medlem
Skrivet av TheMadPanda:

Varför göra ett program förhand om du har en AI?
Fattar att det är för att se vad man kan. Men när verktygen ändras varför ska man kunna skriva allt manuellt?

Har inte börjat använda AI själv för jag vill lära mig på egen hand. Men är väl mer en tidsfråga innan det är ett måste för hög produktivitet.

Av samma orsak:
Varför ska du lära dig matematiska regler när du har miniräknare/matlab?
Varför ska du lära dig konstruera när du har beräknings-/FEM-mjukvara?

Permalänk
Medlem
Skrivet av noMad17:

Jo, det är nog en reell risk. Vi som har lärt oss den "hårda" vägen tappar ju också kunskapen om den inte används ofta, men det går ganska snabbt att komma på banan igen om den kunskapen väl behövs.

Om man lär sig att programmera genom att låta AI generera koden så har man aldrig fått den kunskapen till att börja med. Om den sedan behövs så kommer kurvan vara mycket brantare.

Men det kan ju också bli så att den kunskapen inte längre blir nödvändig. Ungefär som att dagens utvecklare inte nödvändigtvis vet hur man skriver kod i Assembly eller hur pekare fungerar och vad stack och heap är för något.

Nej det slutar ju som med tv'n. När den kom byggde man sin egen tv av kit och nu vet knappt reparatörerna hur de fungerar men vanligt folk kan använda dem ändå.

Visa signatur

R&D Elektronikingenjör

Permalänk
Medlem
Skrivet av cchriss:

Småändringar behöver man oftast göra oavsett då iaf CHAT-GPT och en tendens att smutsa ner koden med all möjlig skräp som inte behövs just i det fallet som man skriver. Den har också en tendens att göra väldigt mångordiga lösningar.

Nja. Om man är väldigt bekant med språket och vet exakt hur man ska lösa problemet så går det oftast snabbare att göra det själv än att tabba ut och ställa en fråga till chat-gpt och sen kopiera in och sen snygga till koden.
Men oftast slipper man ju det.
Man skriver oftast några bokstäver och så får man ett förslag av cop-pilot.
Om det är rätt så är det ju bara trygga tab så är det klart men ofta måste man ändra det lite. Dock går ju även det oftast snabbare än att skriva allt från scratch. Särkilt om inte är jättevan vid språket.
Och om man tex ska populera en stor json eller en struct med dum data så går det extremt mycket snabbare med co-pilot då skriver den oftast rätt och man behöver bara kontrollläsa.

Det är också ganska kul hur man nu kan hoppa in i ett nytt språk och inte förlora sådär jättemycket produktivitet tack vare co-pilot.

Absolut, förstår att det kan vara användbart om man inte är helt bekant med språket.

Permalänk
Medlem
Skrivet av Dunde:

Av samma orsak:
Varför ska du lära dig matematiska regler när du har miniräknare/matlab?
Varför ska du lära dig konstruera när du har beräknings-/FEM-mjukvara?

Man skall lära sig hur saker och ting fungerar.

Man kanske inte skall lära sig att rabbla multiplikationstabeller, men man skall förstå vad multiplikation är.

Och det kan ju vara bra att man inte står som ett fån om man behöver ta reda på vad 593 * 781 är om batteriet på telefonen är urladdat eller om man inte hittar telefonen. Alttså så är det också bra att kunna räkna på papper. Lära sig göra uppskattningar, vad borde ett rimligt värde på 593*781 vara.

Permalänk
Medlem
Skrivet av TheMadPanda:

Varför göra ett program förhand om du har en AI?
Fattar att det är för att se vad man kan. Men när verktygen ändras varför ska man kunna skriva allt manuellt?

Har inte börjat använda AI själv för jag vill lära mig på egen hand. Men är väl mer en tidsfråga innan det är ett måste för hög produktivitet.

Hög produktivitet behöver inte bara vara bra, det ska gå att förstå, underhålla, säkerhetsgranska, testas, kodgranskas, …

Långt ifrån allt är att knacka kod inom modern utveckling

Permalänk
Medlem

Tacka vet jag gammal hederlig C kod skriven av människor inget AI-jox

Permalänk

Ai kommer förändra mycket inom det mesta även skola.
Utveckligen går fort, men folk överskattar ofta hur fort.

Jag själv sa upp abonnemanget på min privata LLM, jag tröttna på när jag säger jag vill ha en lösning på ett visst sätt och absolut inte på ett visst sätt. Så lika förbannat ger den lösningen på det sätt man ej vill ha.

Inom programmering finns det ofta x antal tusen lösningar, de har sina för och nackdelar. Där en nackdel kan vara att den ej fungerar för tillämplingen.

Det är en tidsfråga innan ai blir bättre, men jag sparar mina hårt skattade 200kr/mån till annat.

Permalänk
Medlem

AI som hjälpreda bör inte träda in förrän individens kunskapsnivå är tillräckligt hög, annars saknas nödvändig grundläggande förståelse för hur det fungerar "under huven". Man har mycket god nytta av att själv kunna avgöra om en AI-föreslagen lösning faktiskt fungerar precis som avsett.

Således: nybörjarkurserna bör fortsätta vara precis som de varit. AI bör inte komma in förrän senare.

Det kan vara en god hjälpreda för en erfaren utvecklare, men enbart en dålig krycka för en nybörjare.

Visa signatur

5950X, 3090

Permalänk
Medlem
Skrivet av cchriss:

Småändringar behöver man oftast göra oavsett då iaf CHAT-GPT har en tendens att smutsa ner koden med all möjlig skräp som inte behövs just i det fallet som man skriver. Den har också en tendens att göra väldigt mångordiga lösningar.

Precis, har användaren någon sorts koll på det man frågar från AIn tar de inte lång tid att anpassa det man får ut till exakt det man vill ha och till sin egen still. Då finns det inget sätt för en annan ai att spåra tillbaka det till ai.

Sen ja är de småsaker man vill få ut är det bättre och snabbare att bara göra det själv.

Precis som man inte ber en ai göra varje rad i en saga var för sig. Ska man använda AI får man den att skriva hela/eller rätta hela. Sen städar man upp det man gillar. Då kan man spara lite tid. Samma med programmering. Att be den göra en hel app och städa upp felen går mycket snabbare oftast än att göra från grunden, men att be den göra en kod för att skriva "Hello World" så går det snabbare att bara skriva det kommandot själv.

Sen om man har väldigt svårt för ai, vilket tydligen vissa har så kan de bli för många fel då man använder den så sälla värt att använda den än, men tror de flesta inom teknik kan hantera ai väll.

Permalänk
Medlem
Skrivet av backfeed:

AI som hjälpreda bör inte träda in förrän individens kunskapsnivå är tillräckligt hög, annars saknas nödvändig grundläggande förståelse för hur det fungerar "under huven". Man har mycket god nytta av att själv kunna avgöra om en AI-föreslagen lösning faktiskt fungerar precis som avsett.

Således: nybörjarkurserna bör fortsätta vara precis som de varit. AI bör inte komma in förrän senare.

Det kan vara en god hjälpreda för en erfaren utvecklare, men enbart en dålig krycka för en nybörjare.

Precis ingen idé att ge en unge rättstavningsprogram enbart från start. Då lär de sig aldrig stava.

Däremot kan det användas vid sidan under lektion för att låta elever slå upp ord eller hitta vanliga misstag som de sen får öva på.

Samma kan ai användas tidigt. Då personer kan lära sig själv med hjälp av den att hitta fel i sina koder och vad de behöver öva på. Så jag använder den nu då jag lite på skoj pluggar programmering (väldigt n000b).

Permalänk
Medlem

min svåger jobbar som programmerare och med chatGPT har han kortat programmeringstid från 2 veckor till 2 dagar.

Jag förutspår att det kan bli ett överflöd av arbetslösa programmerare framöver.

Visa signatur

MB Gigabyte X570 I AORUS PRO RAM Corsair 16GB DDR4 3200MHz CL16 SSD Gigabyte AORUS NVMe Gen4 SSD 500GB CPU Ryzen 5 3600 GPU ASUS GeForce GTX 1660 Ti Chassi FD Node 202

Permalänk
Medlem

Verkar som de flesta har väldigt svårt att skilja på programmering och kodning.
Kodning är en del av programmeringsarbetet, ofta inte den största.

Visa signatur

Klient: AMD 7 5800X | ASUS X570-F | 32GB 3200MHz | Corsair RM850 | Gigabyte 3070 | Phanteks P500A | Samsung 980 PRO
HTPC: Intel I7 4770T | 16 GB 1600 | FC8 EVO | Gigabyte GA-H87N-WIFI | Samsung 840 250GB
Server: Intel XEON E5620 x 2| ASUS Z8PE-D18 | 96GB 1333MHz | Corsair AX 1200W | HAF 932 | WD Black 2TB
Nätverk: Telia F@st| Unifi AC Lite/Pro/LR/Nano/Mesh/U6-LR/U6+/U6-Lite | Nighthawk M1 | pfSense | TP-Link TL-WPA8630KIT | Ubiquiti NanoStation M5 | UniFi Switch 8-150W

Permalänk
Medlem

Snickarna måste odla sina egna träd och såga dem med sågen de själva byggt av malmen de grävt upp ur marken innan de börjar fuska med att köpa färdigt. De måste kunna grunderna först innan de börja använda köpta verktyg annars lär de sig inte på riktigt.

Vi har alltid anammat nya verktyg som ändrat våra arbetssätt genom hela mänsklighetens historia. Visst har det alltid funnits bakåtsträvare som hävdat att det nya sätten är dåliga eller fel på något vis men de tynar i princip alltid bort med tiden.

Visst finns det några som använder äldre metoder men det är oftast på hobbynivå eller i extremt små skalor för en liten skara.

Visa signatur

R&D Elektronikingenjör

Permalänk
Medlem
Skrivet av Rebben:

Snickarna måste odla sina egna träd och såga dem med sågen de själva byggt av malmen de grävt upp ur marken innan de börjar fuska med att köpa färdigt. De måste kunna grunderna först innan de börja använda köpta verktyg annars lär de sig inte på riktigt.

Vi har alltid anammat nya verktyg som ändrat våra arbetssätt genom hela mänsklighetens historia. Visst har det alltid funnits bakåtsträvare som hävdat att det nya sätten är dåliga eller fel på något vis men de tynar i princip alltid bort med tiden.

Visst finns det några som använder äldre metoder men det är oftast på hobbynivå eller i extremt små skalor för en liten skara.

Väldigt raljant och inte särskilt träffsäkert om du frågar mig.

Självklart finns det en vits med att man ska förstå det man håller på med, särskilt då AI fortfarande ofta gör en massa fel som blir svåra att upptäcka om man inte vet hur koden bör se ut.

En bättre liknelse hade varit ifall snickare blev ersatta av robotar som skötte snickrandet. Om roboten gör något fel och den mänskliga snickaren inte vet hur det ska fixas så stannar ju allt upp.

Vi har redan en liknande typ av problem med alla lager av abstraktion. När något går fel på en lägre nivå så behöver utvecklaren ha en grundläggande förståelse för att kunna lista ut vad som gått snett och hur det ska åtgärdas. Ofta är svaret en googling bort eftersom det finns väldefinierade felmeddelanden att luta sig emot.

Jag kan tänka mig att det blir svårare att googla på varför koden som AI skrev inte gör som förväntat om man själv inte förstår koden.

Visa signatur

AMD Ryzen 7 1700X 3.8 GHz 20MB | ASUS PRIME X370-PRO | MSI GeForce GTX 1080 Gaming X 8GB | G.Skill 16GB DDR4 3200 MHz CL14 Flare X | Corsair RM650x 650W

Permalänk
Medlem
Skrivet av noMad17:

Väldigt raljant och inte särskilt träffsäkert om du frågar mig.

Jag kan tänka mig att det blir svårare att googla på varför koden som AI skrev inte gör som förväntat om man själv inte förstår koden.

Det får du tycka. Jag tycker det är en helt relevant jämförelse. Bakåtsträvarna försöker alltid bromsa men förlorar alltid kampen.

Det är bara att mata in felkoden till AI'n så löser den det oftast. Visst är det inte bombsäkert än men det handlar inte om många år innan AI'n är bättre än 99% av alla programmerare.

Visa signatur

R&D Elektronikingenjör

Permalänk
Medlem
Skrivet av Prelatur:

Verkar som de flesta har väldigt svårt att skilja på programmering och kodning.
Kodning är en del av programmeringsarbetet, ofta inte den största.

Du menar nog programmering jämfört med systemutveckling/mjukvaruutveckling

Permalänk
Medlem
Skrivet av Rebben:

Det får du tycka. Jag tycker det är en helt relevant jämförelse. Bakåtsträvarna försöker alltid bromsa men förlorar alltid kampen.

Det är bara att mata in felkoden till AI'n så löser den det oftast. Visst är det inte bombsäkert än men det handlar inte om många år innan AI'n är bättre än 99% av alla programmerare.

Fast om koden kör men resultatet blir fel så har du ju ingen felkod att mata in någonstans.

Din liknelse är mer att likställa med att dagens utvecklare skulle odla sina egna kiselkristaller, tillverka egna microchip och kretskort osv, osv. Förstår du varför jag tycker att den haltar?

Jag säger inte att AI är helt oanvändbart för utvecklare, men jag tror att något viktigt går förlorat om nästa generations utvecklare inte klarar av att skriva kod själva. Programmering är inte lätt och det är nästan omöjligt att förklara exakt hur något ska fungera, så sannolikheten att AI bygger en helt fläckfri lösning på första försöket är ganska låg.

Visa signatur

AMD Ryzen 7 1700X 3.8 GHz 20MB | ASUS PRIME X370-PRO | MSI GeForce GTX 1080 Gaming X 8GB | G.Skill 16GB DDR4 3200 MHz CL14 Flare X | Corsair RM650x 650W